//
//  instruction.h
//  PVM_emulator
//
//  Created by Pei Liu on 9/11/11.
//  Copyright 2011 __BobbyL__. All rights reserved.
//
//  header of all instructions

#ifndef PVM_emulator_instruction_h
#define PVM_emulator_instruction_h

#include "error.h"

//0
void _pvm_(int arg1, int arg2);
//1
void _mov_(int arg1, int arg2);
//2
void _mvi_(int arg1, int arg2);
//3
void _mif_(int arg1, int arg2);
//4
void _mit_(int arg1, int arg2);
//5
void _lri_(int arg1, int arg2);
//6
void _ldr_(int arg1, int arg2);
//7
void _str_(int arg1, int arg2);
//8
void _mvr_(int arg1, int arg2);
//9
void _add_(int arg1, int arg2);
//10
void _addri_(int arg1, int arg2);
//11
void _sub_(int arg1, int arg2);
//12
void _mul_(int arg1, int arg2);
//13
void _div_(int arg1, int arg2);
//14
void _or_(int arg1, int arg2);
//15
void _and_(int arg1, int arg2);
//16
void _not_(int arg1, int arg2);
//17
void _b_(int arg1, int arg2);
//18
void _beq_(int arg1, int arg2);
//19
void _bne_(int arg1, int arg2);
//20
void _bgt_(int arg1, int arg2);
//21
void _bge_(int arg1, int arg2);
//22
void _blt_(int arg1, int arg2);
//23
void _ble_(int arg1, int arg2);
//24
void _pushd_(int arg1, int arg2);
//25
void _pushr_(int arg1, int arg2);
//26
void _pushi_(int arg1, int arg2);
//27
void _popd_(int arg1, int arg2);
//28
void _popr_(int arg1, int arg2);
//29
void _puti_(int arg1, int arg2);
//30
void _puts_(int arg1, int arg2);
//31
void _line_(int arg1, int arg2);
//32
void _geti_(int arg1, int arg2);
//33
void _gets_(int arg1, int arg2);
//34
void _call_(int arg1, int arg2);
//35
void _ret_(int arg1, int arg2);
//36
void _stop_(int arg1, int arg2);

#endif
